package org.shagin.jfin.model.event;

import org.shagin.jfin.data.model.AbstractBudgetItem;
import org.shagin.jfin.data.model.IBudget;

/**
 * The Class BudgetItemEvent.
 * 
 * @param <T> the generic type
 */
@SuppressWarnings("serial")
public abstract class BudgetItemEvent<T extends AbstractBudgetItem>
        extends
            BudgetEvent {

    private T budgetItem;

    /**
     * Instantiates a new budget item event.
     * 
     * @param source the source
     * @param budgetItem the budget item
     */
    public BudgetItemEvent(IBudget source, T budgetItem) {
        super(source);
        this.budgetItem = budgetItem;
    }

    /**
     * Gets the budget item.
     * 
     * @return the budget item
     */
    public T getBudgetItem() {
        return budgetItem;
    }

}
